#!/usr/bin/env python
import os
import sys
import django

print("=== 调试 manage.py 执行过程 ===\n")

# 1. 检查当前目录
print(f"1. 当前目录: {os.getcwd()}")
print(f"   当前文件: {__file__}")

# 2. 添加当前目录到Python路径
current_dir = os.path.dirname(os.path.abspath(__file__))
sys.path.insert(0, current_dir)
print(f"2. 添加路径到sys.path: {current_dir}")
print(f"   sys.path[0]: {sys.path[0]}")

# 3. 设置Django设置模块
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'webmgr.settings')
print(f"3. 设置DJANGO_SETTINGS_MODULE: {os.environ.get('DJANGO_SETTINGS_MODULE')}")

# 4. 尝试导入Django
print("\n4. 尝试导入Django...")
try:
    import django
    print(f"   ✓ Django导入成功，版本: {django.get_version()}")
except ImportError as e:
    print(f"   ✗ Django导入失败: {e}")
    sys.exit(1)

# 5. 尝试初始化Django
print("\n5. 尝试初始化Django...")
try:
    django.setup()
    print("   ✓ Django初始化成功")
except Exception as e:
    print(f"   ✗ Django初始化失败: {e}")
    import traceback
    traceback.print_exc()
    sys.exit(1)

# 6. 尝试导入管理命令
print("\n6. 尝试导入Django管理命令...")
try:
    from django.core.management import execute_from_command_line
    print("   ✓ Django管理命令导入成功")
except ImportError as e:
    print(f"   ✗ Django管理命令导入失败: {e}")
    sys.exit(1)

# 7. 尝试执行命令
print("\n7. 尝试执行Django命令...")
try:
    # 模拟 sys.argv
    sys.argv = ['manage.py', 'runserver', '0.0.0.0:8000']
    print(f"   模拟命令行参数: {sys.argv}")
    
    # 执行命令
    execute_from_command_line(sys.argv)
    print("   ✓ Django命令执行成功")
except Exception as e:
    print(f"   ✗ Django命令执行失败: {e}")
    import traceback
    traceback.print_exc()

print("\n=== 调试完成 ===") 